The present invention relates to a system for controlling the position and speed of a moving part in machine tools or other numerically controlled apparatus. In known systems the moving part, positionable along one or each of several axes by means of a separate servomotor, travels along a predetermined continuous path under the control of a series of successive position and speed orders supplied in numerical form by a program unit. Each position order is converted into an analogue signal by a corresponding digital-to-analogue converter and then supplied as a command signal to a position detector adapted to produce an analogue error signal equal to the difference between the current position of the moving part and the position represented by the position order and which controls the speed of the servomotor.
The servomechanisms which carry out the movement along the shifting axes in known systems of this type are normally such as to have a constant error in the output from the position detector with a constant speed of the moving part. Examples of this type are the positioning servomechanisms described in our U.S. Pat. Nos. 3,515,962 and 3,356,994 and U.S. Pat. Application No. 575,802. The first of these patents describes a continuous positioning system in which the program unit is constituted by a program tape on which position orders relating to very closely related positioning points are recorded, a tape reader and registers fed by the reader and adapted to store the successive orders for a time sufficient for the transmission of the respective command to the actuating servomechanism. The second of these patents, on the other hand, describes a continuous positioning arrangement in which the program tape contains only orders relating to discrete points and the tape reader feeds an interpolator adapted to supply as output the orders relating to all the intermediate points included between two successive discrete points of the program.
The position error produced by the position detector cannot exceed a certain value in order not to obtain inaccurate machining and, especially when cyclic position detectors are used, so as not to lose the step between nominal positions indicated by the successive positioning orders and actual positions successively attained by the moving part during the shifting thereof.
If we describe as K the ratio between speed and error, that is V/.epsilon., in which the speed V may be expressed in mm/sec and the error .epsilon. in mm, in known servomechanisms there will be values of the order of 40 for K. Since .epsilon. cannot exceed a predetermined value, it is clear that the maximum speed of movement with which it is possible to control the servomotor is rather limited, that is, in the case where .epsilon. must not exceed 0.5 mm, it is of the order of 20 mm/sec. On the other hand, in order to obtain higher speeds of movement, it would be necessary to have a larger error signal available.
This disadvantage can be obviated by programming the speed of movement, that is the speed order, in a special way. The speed order, instead of being a particular function which acts on transmission ratios, thus changing the speed of the servomotor, is a numerical value proportional to the absolute value of the speed it is desired to obtain. The speed order, having also been converted into an analogue signal, is added to the analague error signal which commands the servomechanism.